pp108 : The Type Library

The Type Library

This topic describes the Type Library.


The Type Library is an advanced version of Libraries provided by the Process Platform framework. Using Type Libraries, you can easily and effectively enhance the behavior of any control or object.

The Libraries earlier provided by Process Platform also help enhance the default behavior of a control or UI element. When used in multiple controls in a form or multiple forms in an application, a library is loaded only once in the Process Platform Desktop and each control or form refers to the library. Also, in case of association between two libraries, the multiple reference instances of a library get associated with only a single instance of the second library.

In other words, the Process Platform framework supports multiple instances of references to a library loaded in the Process Platform Desktop. Also, in case of association between libraries, only once instance of the library being referred to is used.
However, while using Libraires some drawbacks were observed. These are as follows:

  • When multiple instances of a library refer to another library, disassociation of a single reference breaks all the references between the two libraries.
  • It is not possible to create and extend a library from an existing library.
  • Only one Library can be defined per feature. In other words, a feature cannot use multiple libraries. This is because each library is loaded in a separate iframe in the Process Platform Desktop, and communication between two iframes is not possible.

    To address these issues, Type Libraries have been introduced.

    Type Libraries are extended versions of Libraries that provide support for all the above-mentioned features that are not available in Libraries. Each Type Library is identified by a unique NameSpace, and each reference object in a Type Library is identified by a dot separated unique identifier ('namespace'). For example, if the URL of a Type library iscordys/wcp/library/util/autosuggest.htm, its namespace would bewcp.library.util.AutoSuggest. This helps you define any number of Type Libraries inside the sameutilpackage.

    For information about migrating to Type Libraries, see Migrating Libraries to Type Libraries.